﻿// Variables asociadas a los formularios
var login_usuario 			= localStorage['login_usuario'];
var modo_usuario 			= localStorage['modo_usuario'];
var hay_conexion 			= localStorage['hay_conexion'];

var id_opcion				= null;
var id_senal 				= null;
var h_id_senal 				= null;
var fecha_averia 			= null;
var id_motiv_ave 			= null;
var observaciones_ave 		= null;


// onDeviceReady - Phonegap inicializacion
function onDeviceReady() 
{
	validar_conexion_internet();
}


// pagebeforecreate
$( '#registrarAveria' ).live( 'pagebeforecreate',function(event){
  	
});


// pagecreate
$( '#registrarAveria' ).live( 'pagecreate',function(event){
	
	// Carga de Combos por Servicios
	// Combo Motivo Avería
	consultarComboMotivAve();
	
	// Seteamos los Valores correspondientes a la Alcaldia
	cargar_encabezado();
	cargar_pie_pagina();
	
	
	// OnClick
	$('#atras, #atras2').click(function()
	{
		location.href="SubMenuAveria.html";
	});
	
	$('#inicio').click(function()
	{
		location.href="MenuPrincipal.html";
	});
	
	
	$('#consultar').click(function()
	{
		var validacion = consultar_registrar_averia();
		if ( validacion ) {
			
			/*
			// Validamos la Conexión con el Servidor
			var conexion = checkConnection();
			
			// Si Hay Conexión con el Servidor -> Llamamos al Servicio
			if ( conexion ) {
			*/	
			
			// Si Hay Conexión con el Servidor -> Llamamos al Servicio
			if ( localStorage['hay_conexion'] == "true" )
			{
			
				$("#div_datos_sen").show();
				
				// Llamamos al Servicio
				var ajaxManager = $.manageAjax.create('cola_ajax',{manageType: 'queue', maxReq: 0, blockSameRequest:true});
				
				ajaxManager.add({
					type: "POST",
					url:  url_servicio_senal,
					data: "servicio=buscar_datos_sen"+"&"+
						  "id_municipio_base="+id_municipio_base+"&"+
						  "id_senal="+id_senal+"&"+
						  "device_uuid="+device.uuid+"&"+
						  "device_platform="+device.platform+"&"+
						  "login_registro="+login_usuario,
					dataType: 'xml',
					success: function(response_xml)
					{
						$xml_resultado = $(response_xml);
						$status = $xml_resultado.find("status");
						
						if($status.length)
						{
							$status.each(function()
							{
								if($(this).text()=="S")
								{
									
								}
								else if($(this).text()=="N")
								{
									
								}
							});
							
							$datos_sen = $xml_resultado.find("datos_sen");
							
							if($datos_sen.length)
							{
								if ( $datos_sen.text() != "VACIO" )
								{
									$datos_sen.each(function()
									{
										$('#id_senal').attr("value",$xml_resultado.find("id_senal").text());
										$('#h_id_senal').attr("value",$xml_resultado.find("id_senal").text());
										$('#coord_x').attr("value",$xml_resultado.find("coord_x").text());
										$('#coord_y').attr("value",$xml_resultado.find("coord_y").text());
										
										$('#nombre_tipo_sen').attr("value",$xml_resultado.find("nombre_tipo_sen").text());
										$('#nombre_categ_sen').attr("value",$xml_resultado.find("nombre_categ_sen").text());
										$('#nombre_senal_tra').attr("value",$xml_resultado.find("nombre_senal_tra").text());
										
										desc_image_sen = $xml_resultado.find("desc_image_sen").text();
										imprimirImageSenalTra( desc_image_sen );
										
										$('#nombre_estado').attr("value", nombre_estado_base );
										$('#nombre_municipio').attr("value", nombre_municipio_base );
										$('#nombre_parroquia').attr("value",$xml_resultado.find("parroquia").text());
										$('#nombre_sector').attr("value",$xml_resultado.find("sector").text());
										$('#nombre_tipo_via').attr("value",$xml_resultado.find("nombre_tipo_via").text());
										$('#referencia').attr("value",$xml_resultado.find("referencia").text());
										
										$('#observaciones_sen').attr("value",$xml_resultado.find("observaciones_sen").text());
										
										navigator.notification.alert("Información Cargada Exitosamente.", null, acronimo_sistema, "Aceptar");
									});
								} 
								else 
								{
									limpiarBuscarDatosSen();
									navigator.notification.alert("No se encontro una Señal de Tránsito con el ID indicado.", null, acronimo_sistema, "Aceptar");
								}
							}                  		
							else
							{
								navigator.notification.alert("No hay Descripción de la Avería.", null, acronimo_sistema, "Aceptar");
							}
						}
						else
						{
							navigator.notification.alert("No hay Respuesta del Servicio.", null, acronimo_sistema, "Aceptar");
						}
					}
				});
				
				//navigator.notification.alert("Señal de Tránsito Consultada Existosamente para Registrar una Avería. (SERVICIO)", null, acronimo_sistema, "Aceptar");
			
			// Si no Hay Conexión con el Servidor
			} else {
				
				navigator.notification.alert("ATENCIÓN: No se pudo Consultar Señal de Tránsito para Registrar una Avería debido a que actualmente no hay Conexión.\n\nAsegurese que el ID de la Señal de Tránsito es correcto pues la Avería estara asociada a este ID.", null, acronimo_sistema, "Aceptar");
				
				
				$("#div_datos_sen").hide();
				$('#h_id_senal').val( id_senal );
			}
		} else {
			// DATA DE ENTRADA NO VALIDA
		}
	});
	
	
	$('#registrar').click(function()
	{
		var validacion = registrar_averia();
		if ( validacion ) {
			
			/*
			// Validamos la Conexión con el Servidor
			var conexion = checkConnection();
			
			// Si Hay Conexión con el Servidor -> Llamamos al Servicio
			if ( conexion ) {
			*/	
			
			// Si Hay Conexión con el Servidor -> Llamamos al Servicio
			if ( localStorage['hay_conexion'] == "true" )
			{
			
				// Llamamos al Servicio
				var ajaxManager = $.manageAjax.create('cola_ajax',{manageType: 'queue', maxReq: 0, blockSameRequest:true});
				
				ajaxManager.add({
					type: "POST",
					url:  url_servicio_averia,
					data: "servicio=insertar_averia"+"&"+
						  "id_municipio_base="+id_municipio_base+"&"+
						  "id_opcion="+id_opcion+"&"+
						  "id_senal="+h_id_senal+"&"+
						  "fecha_averia="+fecha_averia+"&"+
						  "id_motiv_ave="+id_motiv_ave+"&"+
						  "observaciones="+observaciones_ave+"&"+
						  "device_uuid="+device.uuid+"&"+
						  "device_platform="+device.platform+"&"+
						  "login_registro="+login_usuario,
					dataType: 'xml',
					success: function(response_xml)
					{
						$xml_resultado = $(response_xml);
						$status = $xml_resultado.find("status");
						
						if($status.length)
						{
							$status.each(function()
							{
								if($(this).text()=="S")
								{
									
								}
								else if($(this).text()=="N")
								{
									
								}
							});
							
							$descripcion = $xml_resultado.find("descripcion");
							
							if($descripcion.length)
							{
								$descripcion.each(function()
								{
									navigator.notification.confirm($(this).text(), irSubMenuAve, acronimo_sistema, "Aceptar,");
								});
							}                  		
							else
							{
								navigator.notification.alert("No hay Descripción del Estatus.", null, acronimo_sistema, "Aceptar");
							}
						}
						else
						{
							navigator.notification.alert("No hay Respuesta del Servicio.", null, acronimo_sistema, "Aceptar");
						}
					}
				});
				
				//navigator.notification.alert("Avería de la Señal de Tránsito Registrada Existosamente. (SERVICIO)", null, acronimo_sistema, "Aceptar");
			
			// Si no Hay Conexión con el Servidor -> Insertamos en BD Local
			} else {
				insertarDatosAve( h_id_senal, fecha_averia, login_usuario, id_motiv_ave, observaciones_ave );
				
				//navigator.notification.alert("Avería de la Señal de Tránsito Registrada Existosamente. (LOCALMENTE)", null, acronimo_sistema, "Aceptar");
			}
		} else {
			// DATA DE ENTRADA NO VALIDA
		}
	});
	
	
	if ( modo_usuario == "MSC" ) 
	{
		$('#div_ver_mapa_msc').hide();
	}
	else
	{
		$("#div_ver_mapa_msc").show();
	}
});


// pageinit
$('#registrarAveria').live('pageinit',function(event) {
	
	// OnChange
	
});


// pageshow
$( '#registrarAveria' ).live( 'pageshow',function(event){
	
});


// =================================================================================================================
// =============================== Consultar una Señal para Registrar una Averia ===================================
// =================================================================================================================

function consultar_registrar_averia() {
    
	id_senal 				= $('#id_senal').val();
	
    if ( id_senal == "" ) {
        navigator.notification.alert("Debe indicar el ID de la Señal asociada a la Avería", null, acronimo_sistema, "Aceptar");							return false;
    } else if ( !IsNumeric(id_senal) ) {
        navigator.notification.alert("El ID de la Señal asociada a la Avería debe ser un Número", null, acronimo_sistema, "Aceptar");					return false;
	
    } else {
        return true;
    }
}


// =================================================================================================================
// ============================================ Registrar una Avería ===============================================
// =================================================================================================================

function registrar_averia() {
    
	id_opcion				= $('#id_opcion').val();
	
	h_id_senal 				= $('#h_id_senal').val();
	fecha_averia 			= $('#fecha_averia').val();
	id_motiv_ave 			= $('#id_motiv_ave').val();
	observaciones_ave 		= $('#observaciones_ave').val();
	
    if ( h_id_senal == "" ) {
        navigator.notification.alert("Debe consultar la Señal de Tránsito asociada a la Avería", null, acronimo_sistema, "Aceptar");					return false;
    
	} else if ( fecha_averia == "" ) {
        navigator.notification.alert("Debe indicar la Fecha de la Avería", null, acronimo_sistema, "Aceptar");											return false;
    } else if ( id_motiv_ave == "" ) {
        navigator.notification.alert("Debe indicar el Motivo de la Avería", null, acronimo_sistema, "Aceptar");											return false;
	
    } else {
		// navigator.notification.confirm("ATENCIÓN: ¿Esta seguro de que desea Registrar la Avería de la Señal de Tránsito?", onConfirmRA, acronimo_sistema, "Aceptar,Cancelar");
        if ( window.confirm ("ATENCIÓN: ¿Esta seguro de que desea Registrar la Avería de la Señal de Tránsito?") ) {
            return true;
        } else {
            navigator.notification.alert("El Registro de la Avería de la Señal de Tránsito ha sido cancelado.!", null, acronimo_sistema, "Aceptar");
			return false;
        }
    }
}